package io.datajek.springbasics.movierecommendersystem.Lesson11;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Component;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

@Component
@Primary
@Qualifier("CBF")
public class ContentBasedFilter implements Filter {

    private Logger logger = LoggerFactory.getLogger(this.getClass());

    public ContentBasedFilter(){
        super();
        logger.info("In ContentBasedFilter constructor method");
    }

    @PostConstruct
    public void postConstruct(){
//        将电影加载到缓存中
        logger.info("In RecommenderImplementation postConstruct method");
    }

//  自定义销毁方法
    @PreDestroy
    private void preDestroy(){
//        从缓存中清除电影
        logger.info("In ContentBasedFilter preDestroy method");
    }

    public String[] getRecommendations(String movie){
//        基于内容的过滤器的逻辑
        return new String[]{"Happy Feet","Ice Age","Shark Tale"};
    }
}
